.\"	@(#)ttys.5	6.4.1 (2.11BSD) 1996/11/16
.\"
.TH TTYS 5  "November 16, 1996"
.AT 3
.SH NAME
ttys \- terminal initialization data
.SH DESCRIPTION
The
.I ttys
file contains information that is used by various routines to initialize
and control the use of terminal special files. This information is read
with the
.IR getttyent (3)
library routines.
There is one line in the 
.I ttys
file per special file.
Fields are separated by tabs and/or spaces.
Some fields may contain more than one word and should be enclosed
in double quotes.
Blank lines and comments can appear anywhere in the file; comments
are delimited by `#' and new line. Unspecified fields default to null.
The first field is the terminal's entry in the device directory, /dev.
The second field of the file is the command to execute for the line,
typically
.IR getty (8),
which performs such tasks as baud-rate recognition, reading the login name,
and calling
.IR login (1).
It can be, however, any desired command, for example
the start up for a window system terminal emulator or some other
daemon process, and can contain multiple words if quoted.
The third field is the type of terminal normally connected to that
tty line, as found in the
.IR termcap (5)
data base file.
The remaining fields set flags in the
.I ty_status
entry (see
.IR getttyent (3))
or specify a window system process that
.IR init (8)
will maintain for the terminal line.
As flag values,
the strings `on' and `off' specify whether
.I init
should execute the command
given in the second field,
while `secure' in addition to `on' allows root to login on
this line.  These flag fields should not be quoted.
The string `window=' is followed by a quoted command
string which
.I init
will execute before starting
.IR getty .
If the line ends in a comment, the comment is included in the
.I ty_comment
field of the ttyent structure.
.PP
Some examples:
.PP
.nf
.ta \w'console\ 'u +\w'"/usr/libexec/getty std.9600"\ \ \ 'u +\w'hp2621-nl\ \ \ \ 'u +.7i
console	"/usr/libexec/getty std.1200"	vt100	on secure
ttyd0	"/usr/libexec/getty d1200"	dialup	on	# 555-1234
ttyh0	"/usr/libexec/getty std.9600"	hp2621-nl	on	# 254MC
ttyh1	"/usr/libexec/getty std.9600"	plugboard	on	# John's office
ttyp0	none	network
ttyp1	none	network	off
ttyv0	"/usr/new/xterm -L :0"	vs100	on window="/usr/new/Xvs100 0"
.fi
.PP
The first example permits root login on the console at 1200 baud,
the second allows dialup at 1200 baud without root login,
the third and fourth allow login at 9600 baud with terminal types of
"hp2621-nl" and "plugboard" respectively,
the fifth and sixth line are examples of network pseudo ttys, which
should not have
.I getty
enabled on them,
and the last example shows a terminal emulator and window system
startup entry.
.SH FILES
/etc/ttys
.SH "SEE ALSO"
login(1), getttyent(3), gettytab(5), init(8), getty(8)
